#!/usr/bin/python3
# -*- coding: utf-8 -*-

# 使用list和tuple

# list
# Python内置的一种数据类型是列表：list。
# list是一种有序的集合，可以随时添加和删除其中的元素。
# 比如，列出班里所有同学的名字，就可以用一个list表示：
# 变量classmates就是一个list。用len()函数可以获得list元素的个数：
classmates = ['Michael', 'Bob', 'Tracy']
print(classmates)
print(len(classmates))
print()

# 如果要取最后一个元素，除了计算索引位置外，还可以用-1做索引，直接获取最后一个元素：
print(classmates[-1])

# list是一个可变的有序表，所以，可以往list中追加元素到末尾：
classmates.append('Adam')
print(classmates)
print()

# 也可以把元素插入到指定的位置，比如索引号为1的位置：
classmates.insert(1, 'Jack')
print(classmates)
print()

# 要删除list末尾的元素，用pop()方法：
classmates.pop()
print(classmates)
# 要删除指定位置的元素，用pop(i)方法，其中i是索引位置：
classmates.pop(1)
print(classmates)
print()

# 要把某个元素替换成别的元素，可以直接赋值给对应的索引位置：
classmates[1] = 'Sarah'
print(classmates)
print()


# list里面的元素的数据类型也可以不同，比如：
L = ['Apple', 123, True]
print(L)

# list元素也可以是另一个list，比如：
s = ['python', 'java', ['asp', 'php'], 'scheme']
print(s)
print()


# tuple
# 另一种有序列表叫元组：tuple。tuple和list非常类似，但是tuple一旦初始化就不能修改
# tuple的陷阱：当你定义一个tuple时，在定义的时候，tuple的元素就必须被确定下来
